$(document).ready(function(){
	aluno = null;
	//transforma o formulário em um wizard
	//var wizardObj = wizard($("form").attr("id"),"disciplinar",false);
    //$('textarea').wysiwyg();	
	
	

  //$("#pessoaAutoAluno").simpleAutoComplete(600,"nome","pessoases?find=ByNomeLikeisAluno","carregaAluno");
  //$("#nome").simpleAutoComplete(600,"nome","disciplinas?find=ByDeletadoNot&deletado=true");
  
	//mascaras
//	$("#cep").mask("99.999-999", {placeholder:"_"});
//	$("#telefoneInstituicao").mask("(99) 9999-9999", {placeholder:"_"});	
    
	//datepickers
	datePicker("dataRegistro");
//	$( "#dataPosseResponsavelI" ).datepicker( "option", "dateFormat", "dd/m/yy");
	
	//carrega os combo box
//	loadToComboBox("#estado",estadoDataSource,"uf");
//	loadToComboBox("#ramoSegurancaPublica",ramoSegurancaPublicaDataSource,"nome");
//	loadToComboBox("#ramoSegurancaPublicaAtividades",ramoSegurancaPublicaDataSource,"nome");

//	loadToComboBoxUrl("#perfisDesejados","perfildesejadoes/combo/descricao?class=br.com.educa.modelo.curso.PerfilDesejado","descricao");
//	loadToComboBoxUrl("#formularioSolicitacao","solicitacaocapacitacaos/combo/id?class=br.com.educa.modelo.curso.SolicitacaoCapacitacao&methodName=findSolicitacaoCapacitacaosByStatus&status=Aberto","id");
//	loadToComboBoxUrl("#disciplina","disciplinas/combo/nome?class=br.com.educa.modelo.curso.Disciplina&methodName=findDisciplinasByDeletadoNot&deletado=true","nome");
	loadToComboBoxUrl("#tipoPunicao","punicoestiposes","punicao");

	//combobox dependentes
	$("#tipoPunicao").change(function(event){ 
		objFromCombo = findDataId($("#tipoPunicao").val() , $("#tipoPunicao").get(0).dataSource);		
		$("#valorPunicao").val(objFromCombo.valor); 
	});
	
	$("#tipoLancamento").change(function(event){ 
		if($("#tipoLancamento").val() == 'Elogio'){
			loadToComboBoxUrl("#lancamento","elogiostiposes","elogio");
		}else if($("#tipoLancamento").val() == 'Punicao'){
			loadToComboBoxUrl("#lancamento","punicoestiposes","punicao");
		}else if($("#tipoLancamento").val() == 'Merito'){
			loadToComboBoxUrl("#lancamento","meritostiposes","merito");
		}
	}); 

	$("#lancamento").change(function(event){
		$("#valor").val(lancamento.dataSource[lancamento.selectedIndex-2].valor);
	});		
	
	$("#alunosPesquisaBtn").button({icons: {primary: "ui-icon-search"}, text: false}).click(
	function(){		
//		$("#punicao").hide();
//		$("#elogio").hide();
//		$("#merito").hide();
		loadPage('listarAluno', 'listarAluno', 'Lista de Alunos', true);
	});
	//define as colunas do um para muitos
//	//lançamentos
//	var lancamentosAoColumns = [
//                                        	{"sTitle": "Tipo", "mDataProp": "tipo", "sWidth": "100px", "bVisible": true, "sDefaultContent":""},
//                                        	{"sTitle": "Descrição", "mDataProp": "descricao", "sWidth": "300px", "bVisible": true, "sDefaultContent":""},
//                                        	{"sTitle": "Data", "mDataProp": "dataRegistro", "sWidth": "100px", "bVisible": true, "sDefaultContent":""},
//											{"sTitle": "Valor", "mDataProp": "valor", "sWidth": "50px", "bVisible": true, "sDefaultContent":""}
//										];
//	oneToMany("lancamentosDataGrid", JSON.stringify(lancamentosAoColumns));
	//punicoes
	var punicoesAoColumns = [
                            	{"sTitle": "Data", "mDataProp": "dataRegistro", "sWidth": "50px", "bVisible": true, "sDefaultContent":""},
                            	{"sTitle": "Tipo", "mDataProp": "punicaoTipo.punicao", "sWidth": "50px", "bVisible": true, "sDefaultContent":""},
                            	{"sTitle": "Descrição", "mDataProp": "descricao", "sWidth": "300px", "bVisible": true, "sDefaultContent":""},
                            	{"sTitle": "Valor", "mDataProp": "punicaoTipo.valor", "sWidth": "50px", "bVisible": true, "sDefaultContent":""}
//								{"sTitle": "Valor", "mDataProp": "valor", "sWidth": "50px", "bVisible": true, "sDefaultContent":""}
							];
	oneToMany("punicoesDataGrid", JSON.stringify(punicoesAoColumns));
	
	//elogios
	var elogiosAoColumns = [
                            	{"sTitle": "Data", "mDataProp": "dataRegistro", "sWidth": "50px", "bVisible": true, "sDefaultContent":""},
                            	{"sTitle": "Tipo", "mDataProp": "elogioTipo.punicao", "sWidth": "50px", "bVisible": true, "sDefaultContent":""},
                            	{"sTitle": "Descrição", "mDataProp": "descricao", "sWidth": "300px", "bVisible": true, "sDefaultContent":""},
                            	{"sTitle": "Valor", "mDataProp": "elogioTipo.valor", "sWidth": "50px", "bVisible": true, "sDefaultContent":""}
//								{"sTitle": "Valor", "mDataProp": "valor", "sWidth": "50px", "bVisible": true, "sDefaultContent":""}
							];
	oneToMany("elogiosDataGrid", JSON.stringify(elogiosAoColumns));
	
	$("#btnPunicao").button({ icons: { primary: "ui-icon ui-icon-alert"},text: true});
	$("#btnElogio").button({ icons: { primary: "ui-icon ui-icon-star"},text: true});
	$("#btnMerito").button({ icons: { primary: "ui-icon ui-icon-heart"},text: true});
	
//	$("#adicionarMetodologiasBtn").button({icons: {primary: "ui-icon-plusthick"}, text: false}).click(
//	function(){
//		adicionarDoFormParaDatagrid("metodologiasDisciplina", "dataGridLancamentos");
//		return false;
//	});	
    
});	

//function adicionarDoComboEnumParaDatagrid(idCombo,idDataGrid){
//	var stringEnumValue = $("#"+idCombo).val();
//	var dado = {"matrizCurricular":stringEnumValue};
//	$('#'+idDataGrid).dataTable().fnAddData(dado);
//	$('#'+idDataGrid).dataTable().fnDraw();
//}

//function carregaAluno(){
//	formId = "disciplinar";
//	url = "alunoses?find=ByPessoaAluno&pessoaAluno="+$("#pessoaAutoAlunoHidden").val();
//	$.ajax({
//		"type": "POST",
//		"contentType": "application/json",
//		"dataType": "json",
//		"url": url,
//		"beforeSend": function(xhr,settings){
//			
//			if(!$("#"+formId).validationEngine('validate')){
//				xhr.abort();
//			}else{
//				$("#"+formId).block({message: "<img border='0' src='"+"img/ajax-loader.gif"+"'/> &nbsp;Carregando...",
//					 css: { 'border': '0px',
//							'background': 'transparent',
//							'color': 'white'
//					      } 
//				});
//				settings.data = $.toJSON(object);
//			}
//		},
//		"error":trataErro,
//		"complete": function(){
//				$("#"+formId).unblock();
//				$("#"+formId).validationEngine("hide");
//		},
//		"success": function(){
////			showDialog("Sucesso","Registro salvo com sucesso!");
////			window.location.hash='';
////			window.location.hash.replace('#', '');
////			if($("fieldset").length==1){
////				$("#"+formId).populate(null,{resetForm:true});
////			}else{
////				$("#"+formId).formwizard("reset");
////			}
////			//populaDataGrid();
////			loadSolicitacoes();
////			$('#modalDialog').dialog('destroy');
////			alert("teste passou");
//		}
//	 });	
//	
//}

//melhora de performace.
function recebePessoa(event,idDataGrid){
	clickedTr = $(event.target).parent("td").parent("tr").get(0);
	aTrs = $('#'+idDataGrid).dataTable().fnSettings().aoData;
	for(var i=0; i < aTrs.length; i++){
		
		if(aTrs[i].nTr==clickedTr){
			objetoSelecionado = aTrs[i]._aData;
			$("#pessoaAuto").val("");
			$("#pessoaAutoHidden").val("");			
			$("#pessoaAuto").val(objetoSelecionado.nome);
			$("#pessoaAutoHidden").val(objetoSelecionado.id);			
			$("#pai").val(objetoSelecionado.pai);
			$("#mae").val(objetoSelecionado.mae);			
			$("#telefone").val(objetoSelecionado.telefone);
			i = aTrs.length;	
		}
	}
//	delete aTrs;
//	delete clickedTr;
	divObj = $('#listarPessoa');
	divObj.html("");
	divObj.dialog("close");
	divObj.remove();
//	divObj.dialog({autoOpen:false, closeOnEscape: true, resizable:false, heigth: 400, width: 800, modal: true});
//	divObj.dialog("option","title", "Despacho da solicitação "+objetoSelecionado.id);
//
//
	$.ajax({
		"type": "GET",
		"contentType": "application/json",
		"url": "alunoses?find=ByPessoaAluno&pessoaAluno="+$("#pessoaAutoHidden").val(),
		"beforeSend": function(xhr,settings){
						
			$("#"+$("form").attr("id")).validationEngine('hide');
			$("#disciplinar").block({message: "<img border='0' src='"+"img/ajax-loader.gif"+"'/> &nbsp;Carregando dados do aluno...",
								 css: { 'border': '0px',
										'background': 'transparent',
										'color': 'white'
								      } 
							});
		},
		"error": trataErro,
		"complete": function(){
			$("#disciplinar").unblock();
		},
		"success": function(data, textStatus, xhr){
			aluno = data[0].id;
		}
	 });
}

function abreGrid(grid){
	
	if(grid == "punicao"){
		//loadPage("punicoeses?find=ByAluno&aluno="+aluno, "listarPunicoes", "Lista de Punições", true);
		loadDisciplinar("punicoesDataGrid", "punicoeses?find=ByAluno&aluno="+aluno);
//		$("#punicao").show();
//		$("#elogio").hide();
//		$("#merito").hide();
	}else if(grid == "elogio"){
		loadDisciplinar("elogiosDataGrid", "elogioses?find=ByAluno&aluno="+aluno);
//		$("#punicao").hide();
//		$("#elogio").show();
//		$("#merito").hide();
	}else if(grid == "merito"){
//		$("#punicao").hide();
//		$("#elogio").hide();
//		$("#merito").show();
	}
}

function loadDisciplinar(dataGrid, url){
//	$().html
	$("#"+dataGrid).dataTable().fnClearTable();
	$.ajax({
		"type" : "GET",
		"contentType" : "application/json",
		"dataType" : "json",
		"url" : url, // "solicitacaocapacitacaos?find=BySolicitacoesUsuario",
		"error" : trataErro,
		"success" : function(result) {			
			$("#"+dataGrid).dataTable().fnAddData(result);
		}
	});
}

function popular(){
    registro = $("#"+$("form").attr("id")).formParams(false);
//	var myDate = new Date();
//	var displayDate = (myDate.getMonth()+1) + '/' + (myDate.getDate()) + '/' + myDate.getFullYear();    
//
//	//oneToMany
//	delete registro.matrizCurricular;
//	var matriz = new Array();
//	var dados = $("#dataGridMatrizCurricular").dataTable().fnGetData();
//	for (var i=0; i<dados.length; i++){
//		matriz[i] = dados[i].matrizCurricular;
//	}	
//	registro.matrizCurricular = matriz;
//	
//	delete registro.metodologiasDisciplina;
//	registro.metodologiasDisciplina = serializarDataGrid("dataGridMetodologias");
//	
//	$("select").each(function(){
//		try{ 
//			eval("registro."+$(this).attr("id")+" = findDataId(registro."+$(this).attr("id")+".id, $(\"#"+$(this).attr("id")+"\").get(0).dataSource);");
//		}catch(e){}
//	});
//
//	if($("#deletado").val() == "true"){
//		registro.deletado = true;
//	}else{
//		registro.deletado = false;
//	}
//	
//	//criar a data de inserção
//	if(registro.id == null){
//		var dia = new Date();
//		registro.dataCadastro = dia.getDate()+"/"+dia.getMonth()+"/"+dia.getFullYear();
//	}
	
	return registro;
}
